package Phase_Sixth_Module_One

object Homework_One {

  def changeBeer(beersSum: Int, bottle: Int, cap: Int): Int = {
    println(s"啤酒总数为：$beersSum，瓶子数：$bottle，瓶盖数：$cap")
    //    兑换终止条件
    if (bottle < 3 && cap < 5) return beersSum
    //    瓶子换酒数
    var b1 = bottle / 3
    //    瓶子换酒剩余瓶子数
    var b2 = bottle % 3
    //    瓶盖换酒数
    var c1 = cap / 5
    //    瓶盖换酒剩余瓶子数
    var c2 = cap % 5

    //    调用本方法递归兑换
    changeBeer(beersSum + b1 + c1, b1 + c1 + b2, b1 + c1 + c2)

  }

  def main(args: Array[String]): Unit = {

    //    初始化酒瓶数
    var beersSum = 100 / 2
    //    初始化瓶子和瓶盖数
    var bottle, cap = beersSum
    val sum = changeBeer(beersSum, bottle, cap)
    println(s"100元最多可以换$sum 瓶啤酒")

  }
}
